from ..toolchain import Toolchain
from ..logging import loginfo



class CToolchain(Toolchain):
    @classmethod
    @Toolchain.outputext("c")
    def preprocess(cls, infile, output, params):
        pass
    
    @classmethod
    @Toolchain.outputext("obj")
    def compile(cls, infile, output, params):
        pass
    
    @classmethod
    @Toolchain.outputext("exe")
    def executable(cls, infile, output, params):
        pass
    
    @classmethod
    @Toolchain.outputext("dll")
    def dynlib(cls, infiles, output, params):
        pass
    
    @classmethod
    @Toolchain.outputext("lib")
    def library(cls, infiles, output, params):
        pass


class CppToolchain(CToolchain):
    @classmethod
    @Toolchain.outputext("obj")
    def compile(cls, node):
        pass


class CSharpToolchain(Toolchain):
    pass

class VBToolchain(Toolchain):
    pass

class JSharpToolchain(Toolchain):
    pass









